package com.hsmw.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hsmw.common.base.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * <p>
 * 订单结算表
 * </p>
 *
 * @author wd
 * @since 2021-10-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="HsmwOrderBalance对象", description="订单结算表")
public class HsmwOrderBalance extends BaseModel {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "车号")
    private String carNum;

    @ApiModelProperty(value = "车类型")
    private String vehicleType;

    @ApiModelProperty(value = "施工单位名称")
    private String constructionUnitName;

    @ApiModelProperty(value = "项目名称")
    private String itemName;

    @ApiModelProperty(value = "项目id")
    private String itemId;

    @ApiModelProperty(value = "施工日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private LocalDate constructionTime;

    @ApiModelProperty(value = "施工部位")
    private String constructionPosition;

    @ApiModelProperty(value = "司机方量")
    private String realVolume;

    @ApiModelProperty(value = "票据方量")
    private String writeVolume;

    @ApiModelProperty(value = "差异量")
    private String differenceVolume;

    @ApiModelProperty(value = "产值方量")
    private String outputVolume;

    @ApiModelProperty(value = "工资方量")
    private String settlementVolume;

    @ApiModelProperty(value = "挪泵次数")
    private String movePumpCount;

    @ApiModelProperty(value = "台班情况")
    private String rentInfo;

    @ApiModelProperty(value = "单价")
    private String monovalent;

    @ApiModelProperty(value = "金额")
    private String money;

    @ApiModelProperty(value = "开始工作时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime startWorkTime;

    @ApiModelProperty(value = "结束工作时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime endTime;

    @ApiModelProperty(value = "公式时长")
    private String formulaTime;


    @ApiModelProperty(value = "工作时长")
    private String workTime;

    @ApiModelProperty(value = "预估油耗")
    private String oilConsumption;

    @ApiModelProperty(value = "搅拌站名称")
    private String plantName;

    @ApiModelProperty(value = "混凝土标号")
    private String concreteNum;

    @ApiModelProperty(value = "司机名称")
    private String driverName;

    @ApiModelProperty(value = "备注信息")
    private String remark;

    @ApiModelProperty(value = "报表日期")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    private LocalDateTime statementsTime;

    @ApiModelProperty(value = "对账标志")
    private String reconciliationFlag;


    @ApiModelProperty(value = "releationID")
    private String relationId;

    @ApiModelProperty(value = "订单ID")
    private String orderId;

    @ApiModelProperty(value = "车辆ID")
    private String vehicleId;

    @ApiModelProperty(value = "车辆ID")
    private String orderStatus;

    @ApiModelProperty(value = "车辆ID")
    private String driverId;

    @ApiModelProperty(value = "车牌号")
    private String vehicleNum;

    @ApiModelProperty(value = "空跑")
    private String runCount;

    @ApiModelProperty(value = "空跑补助")
    private BigDecimal runSubsidy;

    @ApiModelProperty(value = "挪泵补助")
    private BigDecimal movePumpSubsidy;


}
